Consulta de Guías Docentes



Academic Year/course: 2017/18

30218 - Programming Theory


Syllabus Information

Academic Year:
2017/18
Subject:
30218 - Programming Theory
Faculty / School:
110 - Escuela de Ingeniería y Arquitectura
326 - Escuela Universitaria Politécnica de Teruel
Degree:
439 - Bachelor's Degree in Informatics Engineering
443 - Bachelor's Degree in Informatics Engineering
ECTS:
6.0
Year:
2
Semester:
Second semester
Subject Type:
Compulsory
Module:
---

5.1. Methodological overview

The learning methodologie will develop itself at several levels:

  • theoretical classes where the needed subject contents are presented and discussed, ad where student participation is encouraged
  • development of practical sessions, where problems of greater complexity are solved
  • computer lab sessions, where the students develop the theoretical concepts with the writing of longer computer programs to solve more complex problems

This steps try to encourage continous on-going work for students.

5.2. Learning tasks

The learning process for this subject is based on the following activities:

  • Continuous students work since first session
  • Learning of concepts and methods for analisys and design of correct and effcient programs by means of theorethical sessions
  • Use of this knowledge for the resolution of algorithmic problems
  • Lab sessions where technologies needed to apply these concepts to real world problems are presented, for some programming languages.
  • Course assignments, which are carried ouy in small groups, in order to encourage in-group work.

 

5.3. Syllabus

Program for this subject is split in two main blocks, with one very short third block at the end. First one develops more advanced Object Oriented Programming concepts, the second focuses on Functional Programming, and the short third makes a sort presentation of other Programming Paradigms.

 

  • Object Oriented Programming
    • Classes

    • Inheritance and Polymorphism

    • Generic Programming

    • Containers and Data Structures

    • Type Inference - Exceptions

    • Object Oriented Design - Design Patterns

    • Event-Driven Programming for GUI Design

    • Database and distributed resources networked access

  • Functional Programming
    • Introduction to Functional Programming

    • Programming Languages for FP

    • Data and Types

    • Functions and expressions

    • Recursion

    • Lists and Higher-Order functions

  • Other Programming Paradigms
    • Logic Programming

    • Dynamic Languages

5.4. Course planning and calendar

The course calendar is defined by the Escuela de Ingeniería y Arquitectura calendar.

 

The scheduling for this subject depends on the different Campuses.

 

In the EINA in Campus Rio Ebro, the scheduling runs this way:

  • Theoretical classes: 2 hours/week
  • Problem classes: 1 hour/week
  • Lab sessions: 7 sessions with 2h duration, one each other week.

In the EUP in Campus Teruel, the scheduling is the following:

  • Theoretical classes: 2 hours/week
  • Problem classes and lab sessions: 2 hours/week.

Students work

To achive the learning objectives in this subject, students work is estimated around 156 hours:

  • 60h of scheduled classes (lectures, assignments, lab sessions)
  • 30h of programming work in groups
  • 60h of personal autonomous learning time
  • 6h for final tests